home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / program / vdit.arc / vdi.h < prev    next >
C/C++ Source or Header  |  1988-07-12  |  2KB  |  55 lines

  1. /*
  2.  * PD mini VDI interface, Eric Gisin
  3.  */
  4.  
  5. /* Memory Form descriptor */
  6. typedef struct {
  7.     short *    base;
  8.     short    width;
  9.     short    height;
  10.     short    wwidth;
  11.     short    standard;
  12.     short    planes;
  13.     short    resv1, resv2, resv3;
  14. } Form;
  15.  
  16. /* Rectangle descriptor */
  17. typedef struct {
  18.     short    x1, y1;        /* upper left */
  19.     short    x2, y2;        /* lower right */
  20. } Rect;
  21.  
  22. /* VDI/AES parameter block */
  23. struct Params {
  24.     short  *ct;            /* control */
  25.     short  *ii;            /* ints in */
  26.     short  *pi;            /* points in */
  27.     short  *io;            /* ints out */
  28.     short  *po;            /* points out */
  29.     short  *xx;
  30. };
  31.  
  32. #define    vdi(params)        bdos(115, params)
  33. #define    vdi_setup(f, h, ii, pi) {ct[0] = f; ct[6] = h; ct[1] = pi; ct[3] = ii; }
  34.  
  35. #define    v_clsvwk(h)        vdi_none(h, 101)
  36. #define    v_clrwk(h)        vdi_none(h, 3)
  37. #define    vro_cpyfm(h, m, r, s, d) vdi_cpyfm(h, 109, m, r, s, d)
  38. #define    vrt_cpyfm(h, m, r, s, d) vdi_cpyfm(h, 121, m, r, s, d)
  39. #define    vsf_color(h, c)        vdi_int1(h, 25, c)
  40. #define    vsf_perimeter(h, f)    vdi_int1(h, 104, f)
  41. #define    vsf_interior(h, s)    vdi_int1(h, 23, s)
  42. #define    vsf_style(h, s)        vdi_int1(h, 24, s)
  43. #define    vst_color(h, c)        vdi_int1(h, 22, c)
  44. #define    vst_effects(h, e)    vdi_int1(h, 106, e)
  45. #define    vst_point(h, s)        vdi_int1(h, 107, s)
  46. #define    vst_rotation(h, a)    vdi_int1(h, 13, a)
  47. #define    vst_font(h, f)        vdi_int1(h, 21, f)
  48. #define    vswr_mode(h, m)        vdi_int1(h, 32, m)
  49. #define    vst_height(h, ht)    vdi_pnt1(h, 12, 0, ht)
  50. #define    v_bar(h, p)        vdi_pnt4v(h, 11, 1, p)
  51. #define    v_rbox(h, p)        vdi_pnt4v(h, 11, 8, p)
  52. #define    v_rfbox(h, p)        vdi_pnt4v(h, 11, 9, p)
  53. #define    v_recfl(h, p)        vdi_pnt4v(h, 114, 0, p)
  54.  
  55.